package quest.uiproxy
{
import flash.events.Event;

import utils.queen.IQueenHandler;
import utils.queen.Queen;

/**
 * QuestUIQueenHandler
 * @author jliang
 * 
 */
public class QuestUIQueenHandler implements IQueenHandler
{
	//==========================================================================
	//  Constructor
	//==========================================================================
	public function QuestUIQueenHandler()
	{
	}
	//==========================================================================
	//  Properties
	//==========================================================================
	private var queenData:QuestUIQueenData;
	
	public function get data():*
	{
		return queenData;
	}
	
	public function set data(value:*):void
	{
		queenData = value;
	}
	
	private var _queen:Queen;
	
	public function get queen():Queen
	{
		return _queen;
	}
	
	public function set queen(value:Queen):void
	{
		_queen = value;
	}
	//==========================================================================
	//  Public methods
	//==========================================================================
	public function start():void
	{
		queenData.ui.addEventListener(QuestUIEvent.UI_COMPLETE, uiCompleteHandler);
		queenData.ui.show();
	}
	
	public function cancel():void
	{
	}
	
	public function dispose():void
	{
		queenData.ui.removeEventListener(QuestUIEvent.UI_COMPLETE, uiCompleteHandler);
	}
	//==========================================================================
	//  Event handlers
	//==========================================================================
	private function uiCompleteHandler(event:QuestUIEvent):void
	{
		event.stopImmediatePropagation();
		queen.complete();
	}
}
}


